In communications networks, a media server is a computing component that processes media streams (e.g., audio and/or video) associated with telephone calls, or other connections, in order to provide media processing functions associated with core telephony services. Media services provided by a media server may include services such as announcement, conferencing, interactive voice response (IVR), and dual tone multi frequency (DTMF) services.
In order to route requests for media services to media servers, additional network components (i.e., one or more controlling entities) have been used to assist in media server selection so that the most appropriate resource is selected for a particular operation. Originally, application servers (AS) were used to find the appropriate media server required for offering a given service. Conventionally, application servers maintained an up-to-date overview of all the available media servers, the capabilities of these servers, and their statuses. Because an application server may control multiple media server instances at any one time, assisting in media server resource selection can be processing intensive and, therefore, negatively impact the ability of application servers to perform other important functions. In order to relieve application servers from having to maintain an up-to-date overview of one or more media servers, a media resource broker (MRB), located between the application servers and the media servers was introduced for receiving requests from application servers for certain services and deciding which media server should handle each request.
However, one problem associated with current media resource delivery architectures that include media resource brokers is that because media servers may possess different media capability sets (i.e., media servers may offer different media services), it can be difficult and slow for media resource brokers to determine the appropriate media server. For example, different media servers may provide similar media functionality, but may have different capacities or media codec support. It is important for the media resource broker to know the capacity and status of each media server in order to properly route queries requesting services provided by the media servers.
Accordingly, in light of these difficulties, a need exists for improved methods, systems, and computer readable media for communicating media server capabilities and status information between a plurality of media servers and a media resource broker.